const { shell,ipcRenderer } = require("electron")
// 新版remote引入模块
const { BrowserWindow, dialog, globalShortcut } = require('@electron/remote')
const fs = require('fs')


// 自定义快捷键
globalShortcut.register("Ctrl+O", () => {
  console.log("ctrl+o")
})

const newWindow = document.querySelector(".new-window")
const goChrome = document.querySelector(".goChrome")
const textareaEl = document.querySelector('textarea')

// 点击打开新窗口
newWindow.onclick = function (e) {
  new BrowserWindow({
    width: 200,
    height: 200
  })
}

// 点击打开浏览器
goChrome.onclick = (e) => {
  e.preventDefault()
  shell.openExternal(e.target.href)
}

// 打开选中文件
const openFile = () => {
  const fsRes = dialog.showSaveDialogSync({
    // 窗口标题
    title: "保存文件",
    // 按钮名
    buttonLabel: "保存文件",
    // 保存类型,数组格式，可以配置多个
    filters: [{ name: "index", extensions: ["js"] }],
  })
  // 获取文件内容
  const filesContent = fs.readFileSync(fsRes).toString()

  textareaEl.value = filesContent
}

// 保存文件
const saveFile = function () {
  const res = dialog.showSaveDialogSync({
    title: '保存文件',
    buttonLabel: '保存文件',
    filters: [
      { name: 'index', extensions: ['js'] },
    ]
  })
  // 将输入框的内容保存到文件
  fs.writeFileSync(res, textareaEl.value)
}

// 点击窗口最大化
const maxWindow = function () {
  ipcRenderer.send('max-window')
}
// 点击窗口最小化
const minWindow = function () {
  ipcRenderer.send("min-window","第二个参数是传递给主线程的参数")
}
// 点击窗口关闭
const closeWindow = function () {
  ipcRenderer.send('close-window')
}